package sort;

/**
 * 直接插入排序
 *	类似于打牌时摸牌
 */
public class InsertSort implements ISort{

	public void sort(int[] arr) {
		for (int i = 1; i < arr.length; i++) {
			int tmp = arr[i];
			for (int j = i - 1; j >= 0; j--) {
				if (tmp < arr[j]) {
					arr[j + 1] = arr[j];
					if(j==0) {
						arr[0] = tmp;
					}
				} else {
					arr[j + 1] = tmp;
					break;
				}
			}
		}
	}

	public static void main(String[] args) {
		InsertSort insertSort = new InsertSort();
		int arr[] = { 8, 4, 7, 9, 6, 3, 1, 2, 5 };
		insertSort.sort(arr);
		ISort.printArr(arr);
	}
}
